A device in an electronic system may require a multi-bit digital address or number as an input. This number may represent an address on a serial bus, a configuration word, a system serial number, or some other information required by the device. Often this number is static, or changes infrequently during the operation of the device. In these circumstances—i.e., where this number is static or requires changes only infrequently—this number is typically required at device startup.
A simple way to input such a number to the device is to have several external pins, each corresponding to a bit of the input word. Each pin is tied to either a high or low value to represent the binary bits of the input word. While straightforward, this technique requires N external electrical connections, where N is the number of bits in the input word. If the device is an integrated circuit in a low-pin-count package, these input bits may consume most of the pins on the device, leaving few for other functionality. Thus, utilizing N pins, where each pin accepts one binary bit, limits the usefulness of the device and is, therefore, a sub-optimal design solution.
Alternatively, the numeric input could also be programmed into the electronic device at the time of manufacture or system assembly, or could be transferred into the device through a single pin using a serial communication protocol. However, each of these methods requires significant additional complexity in the system architecture or manufacturing process.
Thus, it would be desirable to provide circuits and methods that utilize a single pin to accept a single signal corresponding to a multi-bit digital address, number, or signal as required by the electronic device.